import { ApiProperty } from '@midwayjs/swagger'

import { BaseVO } from './base.vo'

/**
 * 用户结构
 */
export class UserVO
  extends BaseVO
  implements Omit<ISysUserEntity, 'dept' | 'roles' | 'posts'>
{
  @ApiProperty({ description: '主键', example: '1' })
  userId: string

  @ApiProperty({ description: '部门主键', example: '1' })
  deptId: string

  @ApiProperty({ description: '用户账号' })
  userName: string

  @ApiProperty({ description: '用户昵称' })
  nickName: string

  @ApiProperty({ description: '用户邮箱' })
  email: string

  @ApiProperty({ description: '手机号码' })
  phone: string

  @ApiProperty({ description: '用户性别' })
  sex: string

  @ApiProperty({ description: '头像地址' })
  avatar: string

  @ApiProperty({ description: '用户密码' })
  password: string

  @ApiProperty({ description: '帐号状态' })
  status: string

  @ApiProperty({ description: '删除标志' })
  delFlag: string

  @ApiProperty({ description: '最后登录IP' })
  loginIp: string

  @ApiProperty({ description: '最后登录IP' })
  loginDate: Date

  @ApiProperty({ description: '备注' })
  remark: string
}
